// pages/buy/cart_v2/cart_v2.js
const DrainageScene = require('../../../../utils/drainage_scene.js')
var app = getApp();
Page({

  /**
   * 页面的初始数据
   */
  data: {
    language: '',
    showcarrfootBol: false,
    showcarrfoot_ipxBol: false,
    firstshow: false,
    loginshow: false,
    cartList_none: false,

    integral: "积分",
    selectBol: true,
    cartDelete: false, //切换编辑状态
    eachCheckList: [], //每个店铺选中的商品购物车id
    eachCartsList: [], //每个店铺全部的商品
    allCartsList: [], //每个店铺全部的商品购物车id
    all_carts_id: [], //全部购物车id
    eachCheckShop: [], // 每个店铺是否全选的状态
    cart_ids: [], //选中的购物车id

    cartList: [], //购物车数据
    failureCartList: [], //失效商品数据
    total_goods_price: 0, //商品总价是优惠前的价格
    total_amount: 0, //合计总价
    point_mall_total: 0,//积分商品积分数量
    total_discount_amount: 0, //优惠
    discount_amount_items: [], //选中购物车优惠项

    // goodData: {}, //单个商品数据=>规格弹窗
    // goods_option_id: '', //单个商品规格id
    // popupSpecs: false, //规格弹窗显示
    // showCouponList: false, //优惠券弹窗显示
    showCouponDetail: false, //优惠明细弹窗显示
    isShowList: false, //购物车商品显示
    checkAll: false, //全选
    rentIndex: -1, // 判断购物车是否有租赁商品

    //配送方式
    showChoose: false,
    radioChoose: '',
    dispatch_types: [],
    chooseType: '', // 判断是否选中了租赁商品
    recommendInfo:[],
    recommendPage:1,
    recommendLast_page:1,
    recommendCurrent_page:1,

    showMore: false,
    sharin_is_open: false, // 购物车分享
    fromTravelShop:''
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    console.log(options,'---------------------options')
    this.setData({
      fromTravelShop:options.fromTravelShop
    })
    let yz_basic_info = wx.getStorageSync('yz_basic_info');
    this.setData({
      vip_show:yz_basic_info.globalParameter.vip_show?yz_basic_info.globalParameter.vip_show:false
    });
    console.log(this.data.vip_show)
  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
    let language = wx.getStorageSync('langIndex');
    this.setData({
      'language': language.en
    });
    wx.setNavigationBarTitle({
      title: this.data.language.cart["购物车"]
    });

    let value = wx.getStorageSync("integral");
    if (value) {
      this.setData({
        integral: value,
      });
    }
  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
    if (this.firstlogin()) {
      // do nothing
    } else {
      this._datainit();
      this._getData();
    }
    // 页面设置插件--商城接口
    this.designRecommend();
  },
  designRecommend(){
    let urlStr = app.getNetAddresss("cart.list.recommend-goods");
    app._getNetWork({
      url: urlStr,
      data:{
        page:this.data.recommendPage
      },
      success: (resdata) => {
        let res = resdata.data;
        if (res.result === 1) {
          this.setData({
            recommendInfo:res.data.data,
            recommendCurrent_page:res.data.current_page,
            recommendLast_page:res.data.last_page
          });
        }else{
          this.setData({
            recommendInfo:false,
            recommendPage:1,
            recommendLast_page:1,
            recommendCurrent_page:1
          });
        }
      }
    });
  },
  designRecommendMore(){
    let urlStr = app.getNetAddresss("cart.list.recommend-goods");
    app._getNetWork({
      url: urlStr,
      data:{
        page:this.data.recommendPage
      },
      success: (resdata) => {
        let res = resdata.data;
        if (res.result === 1) {
          this.setData({
            recommendInfo:this.data.recommendInfo.concat(res.data.data),
            recommendCurrent_page:res.data.current_page,
            recommendLast_page:res.data.last_page
          });
        }
      }
    });
  },
  goRecommend(e){
    let id = e.currentTarget.dataset.id;
    wx.navigateTo({
      url: '/packageA/detail_v2/detail_v2?id='+id,
    });
  },
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {},

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {},

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {},

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
    if(this.data.recommendCurrent_page >= this.data.recommendLast_page){
      console.log('没有更多了');
      return;
    }else{
      this.setData({
        recommendPage:this.data.recommendPage + 1
      });
      this.designRecommendMore();
    }
  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {},
  onShareTimeline:function(){
    return {
      query:'?id=1'
    };
  },
  showcarrfoot_ipx(e) {
    let bol = e.detail;
    this.setData({
      showcarrfoot_ipxBol: bol,
    });
  },
  showcarrfoot(e) {
    let bol = e.detail;
    this.setData({
      showcarrfootBol: bol,
    });
  },
  //初始化数据
  _datainit() {
    this.setData({
      selectBol: true,
      cartDelete: false, //切换编辑状态
      eachCheckList: [], //每个店铺选中的商品购物车id
      eachCartsList: [], //每个店铺全部的商品
      allCartsList: [], //每个店铺全部的商品购物车id
      all_carts_id: [], //全部购物车id
      eachCheckShop: [], // 每个店铺是否全选的状态
      cart_ids: [], //选中的购物车id


      cartList: [], //购物车数据
      failureCartList: [], //失效商品数据
      total_goods_price: 0, //商品总价是优惠前的价格
      total_amount: 0, //合计总价
      point_mall_total: 0,//积分商品积分数量
      total_discount_amount: 0, //优惠
      discount_amount_items: [], //选中购物车优惠项

      showCouponDetail: false, //优惠明细弹窗显示
      isShowList: false, //购物车商品显示
      checkAll: false, //全选
      rentIndex: -1, // 判断购物车是否有租赁商品

      //配送方式
      showChoose: false,
      radioChoose: '',
      dispatch_types: [],
      chooseType: '', // 判断是否选中了租赁商品
    });
  },

  //清空失效购物车数据
  clearFailureCart() {
    wx.showModal({
      title: "提示",
      content: "确定清空失效商品吗？",
      success:(res)=> {
        if (res.confirm) {
          //确认清空
          let cart_id = [];
          this.data.failureCartList.forEach(element => {
            cart_id.push(element.id);
          });
          let urlStr = app.getNetAddresss("cart.list.del-failure-cart");
          app._postNetWork({
            url: urlStr,
            data: {
              cart_ids: cart_id
            },
            success: (resdata) => {
              let res = resdata.data;
              if (res.result === 1) {
                this.setData({
                  failureCartList: [],
                });
                app.tips("清空成功");
              }
            },
            fail: function (res) {
              console.log(res);
            },
          });

        } else if (res.cancel) {
          console.log("用户点击取消");
        }
      },
    });
  },

  //获取购物车数据
  _getData(flag) {
    let json = {
      cart_ids: this.data.cart_ids.join(',')
    };
    if(flag === 'delete') {
      // 获取购物车数量
      json.basic_info = 1;
    }
    let urlStr = app.getNetAddresss("cart.list.index");
    app._postNetWork({
      url: urlStr,
      data: json,
      success: (resdata) => {
        let res = resdata.data;
        if (res.result === 1) {
          this.setData({
            sharin_is_open: res.data.sharin_is_open,
            total_discount_amount: res.data.total_discount_amount,
            discount_amount_items: res.data.discount_amount_items,
            total_amount: Number(res.data.total_amount),
            point_mall_total: Number(res.data.point_mall_total),
            total_goods_price: res.data.total_goods_price,
            cartList: res.data.list,
            failureCartList: res.data.invalid_cart || [] //获取失效购物车数据
          });
          if (!flag) {
            this._allCheckListInit(this.data.cartList);
          } else if (flag === 'delete') {
            this._allCheckListInit(this.data.cartList,flag);
          }
          // flag === 'count' do nothing
          this.setData({
            firstshow: true,
            cartList_none: res.data.list.length <= 0 ? false : true
          });
        } else {
          app.tips(res.msg);
          // this.setData({
          //   isShowList: false,
          // });
        }
      },
      fail: function (res) {
        console.log(res);
      },
    });
  },

  //初始化全选数据
  _allCheckListInit(data,flag) {
    this.setData({
      cart_ids: [],
      eachCartsList: [],
      eachCheckList: [],
      eachCheckShop: [],
    });
    if(flag == "delete" && data.length<=0){
      this.setData({
        cartDelete:false
      })
    }
    if (data.length) {
      let list = [];
      let all_carts_id = [];
      for (let i = 0; i < data.length; i++) {
        this.data.eachCartsList[i] = data[i].carts;
        this.data.eachCheckList.push([]);
        this.data.eachCheckShop.push({
          check: false,
          code: data[i].code,
          is_alone: data[i].is_alone
        });
        if (data[i].code === 'lease-toy') {
          this.data.rentIndex = i;
        }
        list[i] = data[i].carts.map((item) => {
          all_carts_id.push(item.cart_id);
          return item.cart_id.toString();
        });
      }

      //取得购物车全部数据
      this.setData({
        eachCartsList: this.data.eachCartsList,
        eachCheckList: this.data.eachCheckList,
        eachCheckShop: this.data.eachCheckShop,
        rentIndex: this.data.rentIndex,
        allCartsList: list,
        all_carts_id: all_carts_id,
        isShowList: true,
      });
      // console.log(this.data.eachCartsList, this.data.eachCheckList,this.data.eachCheckShop,this.data.allCartsList, this.data.all_carts_id);
    }
    // data的length为0也显示购物车内容 #66497
    this.setData({
      isShowList: true,
    });
  },
  selectBolfun(num) {
    // 判断点击是否点击全选 '1', 防止多次触发this.eachCheckList[c_index]变化allSelectHandle
    num === '1' ? this.data.selectBol = true : this.data.selectBol = false;
  },

  //全选
  allSelect(event) {
    let bol = event.detail;
    this.setData({
      checkAll: bol,
    });
    this.selectBolfun('1');
    if (this.data.selectBol) {
      if (this.data.checkAll) {

        if (this.data.allCartsList.length === 1) {
          // 判断只有租赁的情况
          this.setData({
            chooseType: 'rent',
            eachCheckList: JSON.parse(JSON.stringify(this.data.allCartsList)),
            [`eachCheckShop[0].check`]: true
          });
        } else if (this.data.cartDelete) {
          // 删除操作的时候
          let allCartsList = JSON.parse(JSON.stringify(this.data.allCartsList));
          for (let i = 0; i < allCartsList.length; i++) {
            this.data.eachCheckShop[i].check = true;
          }
          this.setData({
            eachCheckList: JSON.parse(JSON.stringify(this.data.allCartsList)),
            eachCheckShop: this.data.eachCheckShop
          });
        } else {
          // 租赁和平台混合
          this.data.chooseType = 'buy';
          this.data.eachCheckList = [];
          let allCartsList = JSON.parse(JSON.stringify(this.data.allCartsList));
          for (let i = 0; i < allCartsList.length; i++) {
            if (this.data.eachCheckShop[i].is_alone) {
              this.data.eachCheckShop[i].check = false;
              this.data.eachCheckList.push([]);
            } else {
              this.data.eachCheckShop[i].check = true;
              this.data.eachCheckList.push(this.data.allCartsList[i]);
            }
          }

          this.setData({
            chooseType: 'buy',
            eachCheckList: this.data.eachCheckList,
            eachCheckShop: this.data.eachCheckShop
          });
        }

      } else {
        this.data.chooseType = '';
        this.data.eachCheckList = [];
        for (let i = 0; i < this.data.allCartsList.length; i++) {
          this.data.eachCheckList.push([]);
          this.data.eachCheckShop[i].check = false;
        }

        this.setData({
          chooseType: '',
          eachCheckList: this.data.eachCheckList,
          eachCheckShop: this.data.eachCheckShop
        });
      }

      this._countCartView();
    }
  },

  //选择单个店铺商品购买监听 this.eachCheckList[c_index]变化会触发
  allSelectHandle(event) {
    let value = event.detail;
    let c_index = event.currentTarget.dataset.c_index;
    this.selectBolfun('0');
    if (!this.data.selectBol) {
      this.data.eachCheckShop[c_index].check = value.length === this.data.eachCartsList[c_index].length;
      this.data.eachCheckList[c_index] = value;
      this.setData({
        eachCheckShop: this.data.eachCheckShop,
        eachCheckList: this.data.eachCheckList
      });
      this._countCartView();
    }
  },

  // 点击整个店铺购买 通过触发this.eachCheckShop[c_index]请求
  shopChange(event) {
    let val = event.detail;
    let c_index = event.currentTarget.dataset.c_index;
    if (this.data.cartList[c_index].disable) {
      return;
    }
    this.selectBolfun('0');
    if (!this.data.selectBol) {
      if (val) {
        this.data.eachCheckShop[c_index].check = true;
        // 先清空再赋值
        this.data.eachCheckList[c_index].splice(0, this.data.eachCheckList[c_index].length);
        this.data.eachCartsList[c_index].map((item) => {
          this.data.eachCheckList[c_index].push(item.cart_id.toString());
        });
      } else {
        this.data.eachCheckShop[c_index].check = false;
        this.data.eachCheckList[c_index].splice(0, this.data.eachCheckList[c_index].length);
      }

      this.setData({
        eachCheckShop: this.data.eachCheckShop,
        eachCheckList: this.data.eachCheckList,
      });
      this._countCartView();
    }
  },

  //删除界面操作
  onCartDelete() {
    this.data.eachCheckList = [];
    for (let i = 0; i < this.data.eachCartsList.length; i++) {
      this.data.eachCheckList.push([]);
      this.data.cartList[i].disable = false;
      this.data.eachCheckShop[i].check = false;
    }
    this.selectBolfun('1');
    this.setData({
      cartDelete: !this.data.cartDelete,
      chooseType: '',
      checkAll: false,
      eachCheckList: this.data.eachCheckList,
      cart_ids: [],
      total_amount: 0,
      point_mall_total: 0,
      total_goods_price: 0,
      total_discount_amount: 0,
      cartList: this.data.cartList,
      eachCheckShop: this.data.eachCheckShop,
    });
  },

  //删除商品
  deleteGoods() {
    if (this.data.cart_ids.length == 0) {
      wx.showToast({
        icon: 'none',
        title: '请选择删除商品',
        duration: 1500
      });
      return;
    }
    let urlStr = app.getNetAddresss("cart.list.destroy");
    urlStr += "&ids=" + this.data.cart_ids.join(',');
    app._getNetWork({
      url: urlStr,
      success: (resdata) => {
        let res = resdata.data;
        if (res.result == 1) {
          this._getData('delete');
        } else {
          wx.showToast({
            icon: 'none',
            title: res.msg,
            duration: 1500
          });
        }
      },
      fail: (res) => {
        console.log(res);
      }
    });
  },

  // 检查配送方式是否冲突
  async checkGoods(event) {
    let isBindDrainageScene = DrainageScene.bindDrainageScene({
      scene: 1,
      title: '购物车'
    });
    if(!isBindDrainageScene) return;//爆客码绑定场景
    
    // let str = event.currentTarget.dataset.str;
    if (this.data.cart_ids.length == 0) {
      wx.showToast({
        icon: 'none',
        title: '请选择结算商品',
        duration: 1500
      });
      return;
    }

    if (this.data.cart_ids.length > 50) {
      wx.showToast({
        icon: 'none',
        title: '最多一次性只能下单50样商品',
        duration: 1500
      });
      return;
    }
    let basic_info = wx.getStorageSync("yz_basic_info");
    if(basic_info.price_difference_pool){
      if(await this.checkPrice_difference_pool(basic_info) == false){
        return
      }
    }

    let urlStr = app.getNetAddresss("memberCart.checkout");
    urlStr += "&cart_ids=" + this.data.cart_ids.join(",");

    app._getNetWork({
      url: urlStr,
      success: (resdata) => {
        var res = resdata.data;
        if (res.result == 1) {
          if (res.data.need_choose == 1) {
            this.setData({
              dispatch_types: res.data.dispatch_types,
              showChoose: true,
            });
          } else {
            this.submitGoods();
          }
        } else {
          wx.showModal({
            title: '提示',
            content: res.msg,
            showCancel: false,
            success (res) {}
          })
        }
      },
      fail: function (res) {
        console.log(res);
      },
    });
  },
  toBuy() {
    this.submitGoods();
  },
  checkPrice_difference_pool(basic_info){
    let urlStr = app.getNetAddresss("plugin.price-difference-pool.frontend.modules.pool.controllers.validate.index");
    return new Promise((resolve, reject) => {
      app._getNetWork({
        showToastIn: false,
        url: urlStr,
        success: (resdata)=> {
          var res = resdata.data;
          if (res.result == 1) {
            resolve(true)
          } else {
            wx.showModal({
              title: '',
              content: `${basic_info.price_difference_pool_name}为负数，请充值后再购买`,
              confirmText:`去${basic_info.price_difference_pool_name}`,
              confirmColor:'#F15353',
              complete: (res) => {
                if (res.confirm) {
                  wx.navigateTo({
                    url: '/packageJ/priceDifferencePool/index',
                  })
                }
              }
            })
          }
        },
        fail:()=>{
          reject()
          wx.showToast({
            icon: "none",
            title: res.msg,
            duration: 2500,
          });
        }
      });
    })
  },
  //提交订单
  submitGoods() {
    let _cart_ids = [];
    if (this.data.showChoose && !this.data.radioChoose.toString()) {
      wx.showToast({
        icon: "none",
        title: "请先选择配送方式",
        duration: 1500,
      });
      return;
    }

    if (this.data.showChoose) {
      // 配送方式有冲突
      for (let i = 0; i < this.data.dispatch_types[this.data.radioChoose].member_carts.length; i++) {
        _cart_ids.push(
          this.data.dispatch_types[this.data.radioChoose].member_carts[i].id
        );
      }
    } else {
      _cart_ids = this.data.cart_ids;
    }
    if (this.data.chooseType === 'rent') {
      if(this.data.fromTravelShop){
        wx.navigateTo({
          url: '/packageD/buy/myOrder_v2/myOrder_v2?tag=rentCartBuy&cart_ids=' + JSON.stringify(_cart_ids)+'&fromTravelShop=1'
        });
      } else {
        wx.navigateTo({
          url: '/packageD/buy/myOrder_v2/myOrder_v2?tag=rentCartBuy&cart_ids=' + JSON.stringify(_cart_ids)
        });
      }
    } else if (this.data.chooseType === 'buy') {
      if(this.data.fromTravelShop){
        wx.navigateTo({
          url: '/packageD/buy/myOrder_v2/myOrder_v2?tag=-1&cart_ids=' + JSON.stringify(_cart_ids)+'&fromTravelShop=1'
        });
      } else {
        wx.navigateTo({
          url: '/packageD/buy/myOrder_v2/myOrder_v2?tag=-1&cart_ids=' + JSON.stringify(_cart_ids)
        });
      }
    }
  },

  //跳转商品详情
  toGoodsInfo(e) {
    let goods_option_id = e.currentTarget.dataset.option_id;
    let goodsid = e.currentTarget.dataset.goodsid;
    if(goods_option_id){
      if(this.data.fromTravelShop == 1){
        wx.navigateTo({
          url: "/packageA/detail_v2/detail_v2?id=" + goodsid + "&coid=" + goods_option_id +"&fromTravelShop=1"
        });
      }else{
        wx.navigateTo({
          url: "/packageA/detail_v2/detail_v2?id=" + goodsid + "&coid=" + goods_option_id,
        });
      }
     
    }else{
      if(this.data.fromTravelShop == 1){
        wx.navigateTo({
          url: "/packageA/detail_v2/detail_v2?id=" + goodsid+"&fromTravelShop=1"
        });
      } else {
        wx.navigateTo({
          url: "/packageA/detail_v2/detail_v2?id=" + goodsid,
        });
      }
    }
  },

  // 供应商
  toShop(e) {
    let merchant_id = e.currentTarget.dataset.item.merchant_id;
    if (merchant_id > 0) {
      wx.navigateTo({
        url: "/packageA/member/supplier/SupplierShop/SupplierShop?id=" + merchant_id,
      });
    }
  },

  // 凑单
  toSearch(e) {
    let merchant_id = e.currentTarget.dataset.item.merchant_id;
    if (merchant_id > 0) {
      wx.navigateTo({
        url: "/packageA/member/supplier/SupplierShop/SupplierShop?id=" + merchant_id,
      });
    } else {
      wx.navigateTo({
        url: "/packageB/member/category/search_v2/search_v2?plugin_id=1",
      });
    }
  },

  //改变数量
  _changeCount(_num, cart_id, index, c_index) {
    if (_num < 0) {
      wx.showToast({
        icon: "none",
        title: "商品数量不能为负数",
        duration: 1500,
      });
      this.setData({
        [`cartList[${c_index}].carts[${index}].total`]: 1
      });
      return;
    }

    let urlStr = app.getNetAddresss("cart.list.updateNumV2");
    urlStr += "&id=" + cart_id;
    urlStr += "&num=" + _num;

    app._getNetWork({
      url: urlStr,
      success: (resdata) => {
        let res = resdata.data;
        this._countCartView();
        if (res.result == 0) {
          wx.showModal({
            title: '提示',
            content: res.msg,
            showCancel: false,
            success (res) {}
          })
        }
        // if (res.result == 1) {
        //   this._countCartView();
        // } else {
        //   wx.showToast({
        //     icon: "none",
        //     title: res.msg,
        //     duration: 1500,
        //   });
        //   this.setData({
        //     [`cartList[${c_index}].carts[${index}].total`]: 1,
        //   });
        // }
      },
      fail: function (res) {
        console.log(res);
      },
    });
  },

  numberLeft(e) {
    let index = e.currentTarget.dataset.index;
    let c_index = e.currentTarget.dataset.c_index;
    if (this.data.cartList[c_index].carts[index].total <= 1) {
      wx.showToast({
        icon: "none",
        title: "商品数量不能为负数或零",
        duration: 1500,
      });
      return;
    }
    this.setData({
      [`cartList[${c_index}].carts[${index}].total`]: Number(this.data.cartList[c_index].carts[index].total) - 1,
    });
    this._changeCount(
      this.data.cartList[c_index].carts[index].total,
      this.data.cartList[c_index].carts[index].cart_id,
      index,
      c_index
    );
  },

  numberRight(e) {
    let index = e.currentTarget.dataset.index;
    let c_index = e.currentTarget.dataset.c_index;
    this.setData({
      [`cartList[${c_index}].carts[${index}].total`]: Number(this.data.cartList[c_index].carts[index].total) + 1,
    });
    // if (this.data.cartList[c_index].carts[index].total >= 51) {
    // 	wx.showToast({
    // 		icon: 'none',
    // 		title: '该商品每周最多可购买50件',
    // 		duration: 1500
    // 	})
    // 	this.setData({
    // 		[`cartList[${c_index}].carts[${index}].total`]: 1
    // 	})
    // 	return;
    // }
    this._changeCount(
      this.data.cartList[c_index].carts[index].total,
      this.data.cartList[c_index].carts[index].cart_id,
      index,
      c_index
    );
  },

  //输入框失去焦点改变数量
  blurCount(e) {
    let goodtotal = e.currentTarget.dataset.goodtotal;
    let cart_id = e.currentTarget.dataset.cart_id;
    let index = e.currentTarget.dataset.index;
    let c_index = e.currentTarget.dataset.c_index;
    this._changeCount(
      goodtotal,
      cart_id,
      index,
      c_index
    );
  },
  //商品输入框输入绑定
  goodinpbtn(e) {
    let index = e.currentTarget.dataset.index;
    let c_index = e.currentTarget.dataset.c_index;
    let goodval = e.detail.value;
    this.setData({
      [`cartList[${c_index}].carts[${index}].total`]: goodval,
    });
  },

  //计算总价格
  _countCartView() {
    let cart_ids = [];
    for (let i = 0; i < this.data.eachCheckList.length; i++) {
      this.data.eachCheckList[i].map((item) => {
        cart_ids.push(item);
      });
    }
    this.setData({
      cart_ids: cart_ids,
    });

    this.checkRent();
    this.checkChooseAll();
    if (!this.data.cartDelete) {
      this._getData('count');
    }
  },

  // 判断是否全选
  checkChooseAll() {
    if (this.data.cartDelete) {
      if (this.data.all_carts_id.length === this.data.cart_ids.length) {
        //判断全选
        this.data.checkAll = true;
      } else {
        this.data.checkAll = false;
      }
    } else {
      let alone_num = 0;
      if (this.data.allCartsList.length > 1) {
        // 计算单独下单的商品数量 再判断是否全选
        for (let i = 0; i < this.data.allCartsList.length; i++) {
          if (this.data.eachCheckShop[i].is_alone) {
            alone_num = alone_num + this.data.allCartsList[i].length;
          }
        }
      }

      if ((this.data.all_carts_id.length - alone_num) === this.data.cart_ids.length) {
        //判断全选
        this.data.checkAll = true;
      } else {
        this.data.checkAll = false;
      }
    }

    this.setData({
      checkAll: this.data.checkAll
    });
  },

  // 判断是否选中了租赁商品
  checkRent() {
    if (this.data.cart_ids.length > 0) {
      if (this.data.rentIndex > -1 && this.data.eachCheckList[this.data.rentIndex].length > 0) {
        this.data.chooseType = 'rent';
      } else {
        this.data.chooseType = 'buy';
      }
    } else {
      // 全部清空
      this.data.chooseType = '';
    }

    this.setData({
      chooseType: this.data.chooseType
    });
  },

  closeChoose() {
    this.setData({
      showChoose: false,
    });
  },
  typeChange(event) {
    this.setData({
      radioChoose: Number(event.detail),
    });
  },

  openCoupon() {
    this.setData({
      showCouponDetail: true
    });
  },
  closeCoupon() {
    this.setData({
      showCouponDetail: false
    });
  },

  //跳转个人中心
  gomember() {
    wx.reLaunch({
      url: '/packageG/member_v2/member_v2'
    });
  },
  //跳转到首页
  gohome() {
    wx.reLaunch({
      url: '/packageG/index/index'
    });
  },
  gotologin() {
    app.seyzredirect();
    wx.navigateTo({
      url: '/pages/login/login'
    });
  },
  firstlogin() {
    let firstlogin = false;
    try {
      var value = wx.getStorageSync('wx_token');
      if (value) {
        // Do something with return value
        this.setData({
          loginshow: false
        });
        firstlogin = false;
      } else {
        this.setData({
          loginshow: true
        });
        firstlogin = true;
      }
    } catch (e) {
      // Do something when catch error
    }
    return firstlogin;
  },

  toShowMore() {
    this.setData({
      showMore: !this.data.showMore
    });
  },
  shareCartGood() {
    wx.navigateTo({
      url: '/packageF/cart_share/cart_share',
    });
  }
  // showCouponList() {
  // 	this.setData({
  // 		showCouponList: true
  // 	});
  // },
  // closeCouponList() {
  // 	this.setData({
  // 		showCouponList: false
  // 	});
  // },
  // openSpecs(e) {
  //   let goods_id = e.currentTarget.dataset.good.goods_id;
  //   this.getGood(goods_id);
  // },
  // close_yz_specs_popup(e) {
  //   if(e.detail.clicktype == 1) {
  //     //点击确认按钮
  //     this.setData({
  //       popupSpecs: false,
  //       optionsId: e.detail.optionsId,
  //       goodsCount: e.detail.goodsCount
  //     });
  //   }else {
  //     this.setData({
  //       popupSpecs: false,
  //     });
  //   }
  // },
  // //获取数据
  // getGood(goods_id) {
  //   let that = this;
  //   let urlStr = app.getNetAddresss("goods.goods.get-goods-page");
  //   app._postNetWork({
  //     url: urlStr,
  //     showToastIn: false,
  //     data: {
  //       id: goods_id,
  //     },
  //     success: function(resdata) {
  //       let res = resdata.data;
  //       if (res.result == 1) {
  //         that.setData({
  //           popupSpecs: true,
  //           goodsInfo: res.data.get_goods
  //         });
  //       }
  //     },
  //     fail: function(res) {
  //       console.log(res.msg);
  //     }
  //   });
  // },
});
